home *** CD-ROM | disk | FTP | other *** search
/ Turnbull China Bikeride / Turnbull China Bikeride - Disc 2.iso / STUTTGART / LANG / C / GCC / V2-4-5 / GPPLIB / !ReadMe next >
Text File  |  1993-12-08  |  2KB  |  65 lines

  1. C++ Library for GNU C/C++ 2.4.5 and UnixLib
  2. -------------------------------------------
  3.  
  4. This is a (very) slightly altered version libg++2.3.1 which seems
  5. to mainly be wrote & altered by Per Bothner (bothner@cygnus.com).
  6.  
  7. All I've done is made sure that all the included ANSI C libraries
  8. (stdio.h string.h, etc...) were included as 'extern "C"'.  Without
  9. this th eintrenal names used by C++ would be different form those
  10. created by a C complier & they so they wouldnt link together.
  11.  
  12. This was a problem woth the older GNU C++ complier, however that
  13. had a '-+' option which forced the C++ compler to ALWAYS use C
  14. names, so it linked.  The new C++ comlier (a fr as I know) doesn't
  15. have such an option, and so the source needed to be changed so that
  16. the compler knows when to *selectively* use C naming.
  17.  
  18. At least I think this is what is going on.
  19.  
  20. This archive (one) contains the essentials, ie. the object code
  21. and the headers.  The second archive contains the C++ source
  22. code for the library.
  23.  
  24. To use just put the headers somewhere the complier will find them
  25. (a !Gcc.GCC.h directory for example) and the object code somewhere as
  26. well (!GCC.GCC?) and you should then be able to use C++ iostreams
  27. etc...
  28.  
  29. If you have any problems first try including the following in
  30. clib.sys.h.stats before the last #endif:
  31.  
  32. /*-----------------------------------------------------*/
  33. #ifndef S_ISDIR
  34. #define S_ISDIR(mode) (((mode) & S_IFMT) == S_IFDIR)
  35. #endif
  36. #ifndef S_ISBLK
  37. #define S_ISBLK(mode) (((mode) & S_IFMT) == S_IFBLK)
  38. #endif
  39. #ifndef S_ISCHR
  40. #define S_ISCHR(mode) (((mode) & S_IFMT) == S_IFCHR)
  41. #endif
  42. #ifndef S_ISFIFO
  43. #define S_ISFIFO(mode) (((mode) & S_IFMT) == S_IFFIFO)
  44. #endif
  45. #ifndef S_ISREG
  46. #define S_ISREG(mode) (((mode) & S_IFMT) == S_IFREG)
  47. #endif
  48. #if !defined(S_ISLNK) && defined(S_IFLNK)
  49. #define S_ISLNK(mode) (((mode) & S_IFMT) == S_IFLNK)
  50. #endif
  51. /*-----------------------------------------------------*/
  52.  
  53. And it just may work...
  54.  
  55. NOTE : You need to be using UnixLib.
  56.  
  57. Hope it all works out OK, if not mail me and give me some 
  58. grief.
  59.  
  60. Enjoy,
  61.  
  62. Adrian Bool
  63.  
  64. u9119221@sys.uea.ac.uk
  65.